// 1.导入
const express = require('express')
// 2.创建
const app = express()
// 想要让 req.body接收到请求体参数 需要配置一行代码
app.use(express.urlencoded({ extended: false }))
// 导入数据库操作模块
const db = require('./detabase/index')

// 3.书写端口 --- 注册端口
app.post('/api/reguser', (req, res) => {
    // 后端接收post请求体参数:  req.body  把请求体参数放到对象里面
    // console.log(req.body);
    let { username, password } = req.body
    // 定义sql语句 根据用户名查询用户是否存在
    let sql = `select * from user where username="${username}"`
    db(sql, (err, results) => {
        if (err) {
            return res.send({status:1,msg:'sql语法错误' + err.message})
        }
        // 判断用没有查到已存在的用户名
        if(results.length >=1) {
            return res.send({status:1,msg:'用户名已存在 请更换用户名'})
        }
        // 在执行sql语句里面 添加用户
        // 下载 utility  npm i utility@1.17.0
        // 导入 utility 加密密码
        const utility = require('utility')
        password = utility.md5(password)
        let sql = `insert into user set username="${username}",password="${password}"`
        db(sql,(err,results)=>{
            // 判断sql
            if(err){
                return res.send({status:1,msg:'sql语法错误' + err.message})
            }
            // 判断影响行数
            if(results.affectedRows !==1) {
                return res.send({status:1,msg:'添加失败'})
            }
        })
        // 模拟注册功能完成
        res.send({status:0,msg:'注册功能完成'})
    })
    // res.send('注册功能完成')
})
// 4. 启动服务
app.listen(3006, () => {
    console.log('http://localhost:3006');
})

